_BUS_HANDLER

//0x6c bytes (sizeof) struct _BUS_HANDLER { ULONG Version; //0x0 enum _INTERFACE_TYPE InterfaceType; //0x4 enum _BUS_DATA_TYPE ConfigurationType; //0x8 ULONG BusNumber; //0xc struct _DEVICE_OBJECT* DeviceObject; //0x10 struct _BUS_HANDLER* ParentHandler; //0x14 VOID* BusData; //0x18 ULONG DeviceControlExtensionSize; //0x1c struct _SUPPORTED_RANGES* BusAddresses; //0x20 ULONG Reserved[4]; //0x24 ULONG (*GetBusData)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, ULONG arg3, VOID* arg4, ULONG arg5, ULONG arg6); //0x34 ULONG (*SetBusData)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, ULONG arg3, VOID* arg4, ULONG arg5, ULONG arg6); //0x38 LONG (*AdjustResourceList)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, struct _IO_RESOURCE_REQUIREMENTS_LIST** arg3); //0x3c LONG (*AssignSlotResources)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, struct _UNICODE_STRING* arg3, struct _UNICODE_STRING* arg4, struct _DRIVER_OBJECT* arg5, struct _DEVICE_OBJECT* arg6, ULONG arg7, struct _CM_RESOURCE_LIST** arg8); //0x40 ULONG (*GetInterruptVector)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, ULONG arg3, ULONG arg4, UCHAR* arg5, ULONG* arg6); //0x44 UCHAR (*TranslateBusAddress)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, union _LARGE_INTEGER arg3, ULONG* arg4, union _LARGE_INTEGER* arg5); //0x48 VOID* Spare1; //0x4c VOID* Spare2; //0x50 VOID* Spare3; //0x54 VOID* Spare4; //0x58 VOID* Spare5; //0x5c VOID* Spare6; //0x60 VOID* Spare7; //0x64 VOID* Spare8; //0x68 };